package com.shixianjun.leetcode;

import java.util.Dictionary;

public class _13_罗马数字转整数 {

    static public int romanToInt(String s) {
        if (s.length() == 0) return 0;

        int sum = 0;
        int pNum = getValue(s.charAt(0));
        for (int i = 1; i < s.length(); i++) {
            int num = getValue(s.charAt(i));
            if (pNum < num) {
                sum -= pNum;
            } else {
                sum += pNum;
            }
            pNum = num;
        }
        sum += pNum;

        return sum;
    }

    static private int getValue(char c) {
        switch (c) {
            case 'I': return 1;
            case 'V': return 5;
            case 'X': return 10;
            case 'L': return 50;
            case 'C': return 100;
            case 'D': return 500;
            case 'M': return 1000;
            default: return 0;
        }
    }

    public static void main(String[] args) {
        System.out.print(romanToInt("MCMXCIV"));
    }
}
